ci: move coverage badge updates to a daily PR-based cron#369
Merged
Conversation
The CI job pushed a regenerated coverage.json directly to master on every push, which force-pushed/raced against concurrent merges and failed CI. Remove that merge-time publish step (and the job's contents:write permission), and add a daily scheduled workflow that regenerates the badge and opens an auto-merging PR only when the coverage value changes. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Open the badge PR for manual review instead of queuing it to auto-merge. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
ci.yaml, which committed and force-pushed a regeneratedcoverage.jsonback tomasteron every push. That step raced against concurrent merges and failed CI.contents: writepermission from thetest-jre21job. The threshold-enforcement step still regeneratescoverage.jsonand gates PRs at 90% — it just no longer pushes.coverage_badge.yaml) that regenerates the badge and opens a PR only when the coverage value has actually changed.New workflow behavior
workflow_dispatch).bazel coverageon the canonical Bazel9.xrunner and regeneratescoverage.jsonvia the same//tools:coverage-checkinvocation CI uses.ci/coverage-badge-update), force-pushes that branch (nevermaster), and opens/reuses a PR intomasterfor manual review.🤖 Generated with Claude Code